package com.jinhongone.pattern.creater.singleton.demo3;

/*
* 单例模式：懒汉模式--线程安全方式
* */
public class Singleton {

    private static Singleton instance;

    private Singleton() {
    }
//   此处需要加锁，不加锁会存在线程安全问题
    public static synchronized Singleton getInstance() {
        if (instance == null) {
//            若不加锁synchronized，多个线程运行时可能会，在此处等待，出现重复new对象的现象。
            instance = new Singleton();
        }
        return instance;
    }

}
